In a conventional printing system, a host computer that executes print processing transmits print data to a print server that manages the print job, and the print server (which will be referred to as a “conventional print server” below) transmits the print data to a printer. Conventional print servers usually are provided separately. Problems encountered in the conventional print system are an increase in network load due to the sending and receiving of print data, the burden imposed by installing conventional print servers anew and an increase in the load on conventional print servers.
A printing system set forth below is now being developed in order to solve these problems. For example, a client transmits only job information to a print server and spools print data itself. The print server, on the other hand, retains the job information and manages the sequence of jobs. Further, the print server performs management by monitoring the status of the printer. When it is judged that a printer is capable of accepting print data, the print server so notifies the client. Next, the client so notified by the print server transmits the print data to the printer. As a result, the print data is transmitted directly from the computer that requests printing to the printer without being sent to the print server. This makes it possible to reduce the load on devices and on the network proper. Further, since the load on the print server is reduced, it is unnecessary to newly install a separate print server. In such a print system, however, it is necessary to solve a variety of problems in order to execute print processing appropriately.
The above-mentioned recently developed print server (referred to simply as a “print server” below) that is capable of executing printing sequence processing without spooling print data is required to positively ascertain the status of each printer on the network in order to manage the printing sequence properly. For example, status refers to the state of print processing, which includes the printing-complete status of a printer. In recent years a printer constructing a print system and having a function for notifying of completion of printing has been developed. There are many printers in which the destination to be notified of completion of printing is the source of the print job transmitted to the printer. The destination to be notified of completion of printing by such printers is the host computer that was the source of the transmitted print data. A problem which arises is that the host computer cannot receive such notification of completion of printing. Accordingly, a first goal is to provide an arrangement in which it is possible to receive notification of completion of printing from each printer.
It has become possible in recent years to connect a variety of printers to a printing system. These printers include those having a function for notifying of completion of printing and those not having this function. The print server in recently developed printing systems ascertains the completion of printing of each printer uniformly by polling, even printers having the function for notifying of completion of printing. In accordance with polling, however, printer status is acquired any number of times. A problem that arises, therefore, is increased load upon the network, printers and print servers. Accordingly, a second goal is to provide an arrangement in which it is possible to receive notification of completion of printing reliably irrespective of whether there is notification of end of printing and without subjecting the network and devices to a load on the side of the print server.
Printers having a function for notifying of completion of printing include printers in which the destination of such notification can be registered in advance and printers in which such notification cannot be registered. If print data is transmitted as is to a printer in which the destination of such notification cannot be registered, print data will be generated that includes an instruction to set the source of the transmitted print data as the destination to be notified of completion of printing and it will not be possible for notification of completion of printing to be received reliably on the side of the print server. Accordingly, a third goal is to provide an arrangement in which it is possible to receive notification of completion of printing reliably on the side of the print server in accordance with the print-completion notification function of various printers.